package com.tubi.MyAtomThread1;

import java.util.concurrent.atomic.AtomicInteger;

public class MyAtomIntergerDemo1 {
    /*
    * public AtomicInteger()：	   			    初始化一个默认值为0的原子型Integer
public AtomicInteger(int initialValue)：  初始化一个指定值的原子型Integer

int get():   			 				获取值
int getAndIncrement():      			 以原子方式将当前值加1，注意，这里返回的是自增前的值。
int incrementAndGet():     				 以原子方式将当前值加1，注意，这里返回的是自增后的值。
int addAndGet(int data):				 以原子方式将输入的数值与实例中的值（AtomicInteger里的value）相加，并返回结果。
int getAndSet(int value):   			 以原子方式设置为newValue的值，并返回旧值。
    * */
    public static void main(String[] args) {
        AtomicInteger ac = new AtomicInteger(10);
        int i = ac.get();
        int andIncrement = ac.getAndIncrement();
        int i1 = ac.incrementAndGet();
        int i2 = ac.addAndGet(12);//24
        int andSet = ac.getAndSet(12);
        System.out.println(andSet);
        System.out.println(i);
    }
}

